<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <h2>前端页面</h2>
    <button>按钮</button>
</body>
<script>
// 点击按钮发送ajax
var btn = document.querySelector('button')
btn.onclick = function() {
    // 发送ajax - 跟数据服务器做交互
    // 1.创建电话
    var xhr = new XMLHttpRequest()
    // 2.设置号码或卡
    xhr.open('get', 'http://localhost:3000/user')
    // 3.拨号
    xhr.send()
    // 4.监听状态
    xhr.onreadystatechange = function() {
        // 监听状态
        console.log( xhr.readyState ); // 通信状态
        // 2：我们已经将这个请求发送给服务器了，但是服务器正在准备给我们回应信息
        // 3：服务器已经准备好数据了，正在回应中
        // 4：数据已经回应结束了 - 我们就可以听到了

        // 判断哪个状态下才可以接收数据
        if(xhr.readyState === 4) {
            // 判断这次请求是否是正确的成功的请求
            // console.log( xhr.status ); // 响应状态
            // 1xx：正在请求中
            // 2xx：成功
            // 3xx：重定向或缓存
            // 4xx：客户端错误
            // 5xx：服务器端错误
            if(xhr.status >= 200 && xhr.status < 300) {
                // 听到对方的声音了
                var msg = xhr.responseText
                console.log(msg);
                // 接收到的是一个字符串
                // 转成数组
                var arr = JSON.parse(msg)
                console.log(arr);
            }
        }
    }
}
</script>
</html>